<!-- HTML header for doxygen 1.9.7-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<title>libsir: The Standard Incident Reporter Library</title>
<!-- OpenGraph -->
<meta property="og:title" content="libsir: The Standard Incident Reporter Library">
<meta property="og:description" content="A lightweight, cross-platform C library for information distribution">
<meta property="og:url" content="https://libsir.rml.dev">
<meta property="og:type" content="website">
<meta property="og:image" content="https://libsir.rml.dev/res/libsir-og.png">
<meta name="twitter:card" content="summary_large_image"></meta>
<meta name="twitter:title" content="libsir: The Standard Incident Reporter Library"></meta>
<meta name="twitter:description" content="A lightweight, cross-platform C library for information distribution"></meta>
<meta name="twitter:image" content="https://libsir.rml.dev/res/libsir-og.png"></meta>
<!-- /OpenGraph -->
<!-- favicon -->
<link rel="icon" href="res/libsir-icon.png">
<link rel="icon" href="res/libsir-icon.svg" type="image/svg+xml">
<link rel="manifest" href="res/icons.webmanifest">
<!-- /favicon -->
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="stylesheet.css" rel="stylesheet" type="text/css" />
<link href="rml-navtree.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr id="projectrow">
  <td id="projectalign">
   <div id="projectname">libsir<span id="projectnumber">&#160;2.2.6</span>
   </div>
   <div id="projectbrief">Standard Incident Reporter</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
  initMenu('',true,false,'search.php','Search',true);
  $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){initNavTree('ansimacros_8h.html',''); initResizable(true); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>

<div class="header">
  <div class="summary">
<a href="#define-members">Macros</a>  </div>
  <div class="headertitle"><div class="title">ansimacros.h File Reference</div></div>
</div><!--header-->
<div class="contents">

<p>ANSI escape sequence macros.  
<a href="#details">More...</a></p>
<div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="ansimacros_8h__dep__incl.svg" width="100%" height="600"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div></div>
</div>
</div>
<p><a href="ansimacros_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="define-members" name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a0cb084124e9ecca12ea15d5ffd37284a" id="r_a0cb084124e9ecca12ea15d5ffd37284a"><td class="memItemLeft" align="right" valign="top"><a id="a0cb084124e9ecca12ea15d5ffd37284a" name="a0cb084124e9ecca12ea15d5ffd37284a"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_ESC</b>&#160;&#160;&#160;&quot;\x1b[&quot;</td></tr>
<tr class="memdesc:a0cb084124e9ecca12ea15d5ffd37284a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Begins an ANSI escape sequence. <br /></td></tr>
<tr class="separator:a0cb084124e9ecca12ea15d5ffd37284a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7cc54c9116a34d86975364e0c52a1987" id="r_a7cc54c9116a34d86975364e0c52a1987"><td class="memItemLeft" align="right" valign="top"><a id="a7cc54c9116a34d86975364e0c52a1987" name="a7cc54c9116a34d86975364e0c52a1987"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_ESC_M</b>&#160;&#160;&#160;&quot;m&quot;</td></tr>
<tr class="memdesc:a7cc54c9116a34d86975364e0c52a1987"><td class="mdescLeft">&#160;</td><td class="mdescRight">Marks the end of a sequence. <br /></td></tr>
<tr class="separator:a7cc54c9116a34d86975364e0c52a1987"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a214056aecbf2d48867807967db489a5d" id="r_a214056aecbf2d48867807967db489a5d"><td class="memItemLeft" align="right" valign="top"><a id="a214056aecbf2d48867807967db489a5d" name="a214056aecbf2d48867807967db489a5d"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_ESC_RST</b>&#160;&#160;&#160;SIR_ESC_SEQE(&quot;0&quot;)</td></tr>
<tr class="memdesc:a214056aecbf2d48867807967db489a5d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Resets all previously applied colors and effects/attributes. <br /></td></tr>
<tr class="separator:a214056aecbf2d48867807967db489a5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afe296ab1f6b488fd5e23ebd50c780b80" id="r_afe296ab1f6b488fd5e23ebd50c780b80"><td class="memItemLeft" align="right" valign="top"><a id="afe296ab1f6b488fd5e23ebd50c780b80" name="afe296ab1f6b488fd5e23ebd50c780b80"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_R_ARROW</b>&#160;&#160;&#160;&quot;\xe2\x86\x92&quot;</td></tr>
<tr class="memdesc:afe296ab1f6b488fd5e23ebd50c780b80"><td class="mdescLeft">&#160;</td><td class="mdescRight">A few fun characters. <br /></td></tr>
<tr class="separator:afe296ab1f6b488fd5e23ebd50c780b80"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2d1fd399cd6660d17f42879aefd848ee" id="r_a2d1fd399cd6660d17f42879aefd848ee"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2d1fd399cd6660d17f42879aefd848ee">SIR_COLOR</a>(attr,  fg,  bg,  s)</td></tr>
<tr class="memdesc:a2d1fd399cd6660d17f42879aefd848ee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a sequence of colored characters 's' with foreground color 'fg', background color 'bg', and attributes 'attr' (<code>0=normal, 1=bold, 2=dim, 3=italic, 4=underlined, 5=blinking, 7=inverted, 9=strikethrough</code>).  <br /></td></tr>
<tr class="separator:a2d1fd399cd6660d17f42879aefd848ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3a8fbdd47c9dd8b597061881bc402e68" id="r_a3a8fbdd47c9dd8b597061881bc402e68"><td class="memItemLeft" align="right" valign="top"><a id="a3a8fbdd47c9dd8b597061881bc402e68" name="a3a8fbdd47c9dd8b597061881bc402e68"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_STRIKE</b>(s)</td></tr>
<tr class="memdesc:a3a8fbdd47c9dd8b597061881bc402e68"><td class="mdescLeft">&#160;</td><td class="mdescRight">Strike-through. <br /></td></tr>
<tr class="separator:a3a8fbdd47c9dd8b597061881bc402e68"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b02b40b2b68fce808c72bb3a9e8f713" id="r_a3b02b40b2b68fce808c72bb3a9e8f713"><td class="memItemLeft" align="right" valign="top"><a id="a3b02b40b2b68fce808c72bb3a9e8f713" name="a3b02b40b2b68fce808c72bb3a9e8f713"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_INVERT</b>(s)</td></tr>
<tr class="memdesc:a3b02b40b2b68fce808c72bb3a9e8f713"><td class="mdescLeft">&#160;</td><td class="mdescRight">Inverted fg/bg. <br /></td></tr>
<tr class="separator:a3b02b40b2b68fce808c72bb3a9e8f713"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acaa75bb88396b30764b3db8228388c62" id="r_acaa75bb88396b30764b3db8228388c62"><td class="memItemLeft" align="right" valign="top"><a id="acaa75bb88396b30764b3db8228388c62" name="acaa75bb88396b30764b3db8228388c62"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_ULINE</b>(s)</td></tr>
<tr class="memdesc:acaa75bb88396b30764b3db8228388c62"><td class="mdescLeft">&#160;</td><td class="mdescRight">Underlined. <br /></td></tr>
<tr class="separator:acaa75bb88396b30764b3db8228388c62"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a31d4d7856c4487cc5d6f53c55d0f0241" id="r_a31d4d7856c4487cc5d6f53c55d0f0241"><td class="memItemLeft" align="right" valign="top"><a id="a31d4d7856c4487cc5d6f53c55d0f0241" name="a31d4d7856c4487cc5d6f53c55d0f0241"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_EMPH</b>(s)</td></tr>
<tr class="memdesc:a31d4d7856c4487cc5d6f53c55d0f0241"><td class="mdescLeft">&#160;</td><td class="mdescRight">Emphasis/italic. <br /></td></tr>
<tr class="separator:a31d4d7856c4487cc5d6f53c55d0f0241"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac8699578783802a23c01ebf6576f21b7" id="r_ac8699578783802a23c01ebf6576f21b7"><td class="memItemLeft" align="right" valign="top"><a id="ac8699578783802a23c01ebf6576f21b7" name="ac8699578783802a23c01ebf6576f21b7"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_BOLD</b>(s)</td></tr>
<tr class="memdesc:ac8699578783802a23c01ebf6576f21b7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bold. <br /></td></tr>
<tr class="separator:ac8699578783802a23c01ebf6576f21b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a66956fe24a89f5b6cc69f3ea4a31d3d6" id="r_a66956fe24a89f5b6cc69f3ea4a31d3d6"><td class="memItemLeft" align="right" valign="top"><a id="a66956fe24a89f5b6cc69f3ea4a31d3d6" name="a66956fe24a89f5b6cc69f3ea4a31d3d6"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_BLINK</b>(s)</td></tr>
<tr class="memdesc:a66956fe24a89f5b6cc69f3ea4a31d3d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Blinking text. <br /></td></tr>
<tr class="separator:a66956fe24a89f5b6cc69f3ea4a31d3d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a41637fc1fa48913e5a194648db53ef60" id="r_a41637fc1fa48913e5a194648db53ef60"><td class="memItemLeft" align="right" valign="top"><a id="a41637fc1fa48913e5a194648db53ef60" name="a41637fc1fa48913e5a194648db53ef60"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_BLACK</b>(s)</td></tr>
<tr class="memdesc:a41637fc1fa48913e5a194648db53ef60"><td class="mdescLeft">&#160;</td><td class="mdescRight">Black foreground text. <br /></td></tr>
<tr class="separator:a41637fc1fa48913e5a194648db53ef60"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9fb357481a9c4cc25da45fd691ad903e" id="r_a9fb357481a9c4cc25da45fd691ad903e"><td class="memItemLeft" align="right" valign="top"><a id="a9fb357481a9c4cc25da45fd691ad903e" name="a9fb357481a9c4cc25da45fd691ad903e"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_BLACKB</b>(s)</td></tr>
<tr class="memdesc:a9fb357481a9c4cc25da45fd691ad903e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bold black foreground text. <br /></td></tr>
<tr class="separator:a9fb357481a9c4cc25da45fd691ad903e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeb49621999b8b6e8dcdb044b96d0ca1f" id="r_aeb49621999b8b6e8dcdb044b96d0ca1f"><td class="memItemLeft" align="right" valign="top"><a id="aeb49621999b8b6e8dcdb044b96d0ca1f" name="aeb49621999b8b6e8dcdb044b96d0ca1f"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_RED</b>(s)</td></tr>
<tr class="memdesc:aeb49621999b8b6e8dcdb044b96d0ca1f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Red foreground text. <br /></td></tr>
<tr class="separator:aeb49621999b8b6e8dcdb044b96d0ca1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af190695de82e402d91df0eab38060206" id="r_af190695de82e402d91df0eab38060206"><td class="memItemLeft" align="right" valign="top"><a id="af190695de82e402d91df0eab38060206" name="af190695de82e402d91df0eab38060206"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_REDB</b>(s)</td></tr>
<tr class="memdesc:af190695de82e402d91df0eab38060206"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bold red foreground text. <br /></td></tr>
<tr class="separator:af190695de82e402d91df0eab38060206"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a31d1946d89d8da6ce2a0bdbef4bcf4c6" id="r_a31d1946d89d8da6ce2a0bdbef4bcf4c6"><td class="memItemLeft" align="right" valign="top"><a id="a31d1946d89d8da6ce2a0bdbef4bcf4c6" name="a31d1946d89d8da6ce2a0bdbef4bcf4c6"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_BRED</b>(s)</td></tr>
<tr class="memdesc:a31d1946d89d8da6ce2a0bdbef4bcf4c6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bright red foreground text. <br /></td></tr>
<tr class="separator:a31d1946d89d8da6ce2a0bdbef4bcf4c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa3830b12a0135a7f15ba97b4b81b7a8d" id="r_aa3830b12a0135a7f15ba97b4b81b7a8d"><td class="memItemLeft" align="right" valign="top"><a id="aa3830b12a0135a7f15ba97b4b81b7a8d" name="aa3830b12a0135a7f15ba97b4b81b7a8d"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_BREDB</b>(s)</td></tr>
<tr class="memdesc:aa3830b12a0135a7f15ba97b4b81b7a8d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bold bright red foreground text. <br /></td></tr>
<tr class="separator:aa3830b12a0135a7f15ba97b4b81b7a8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad9d48b7bfa5fe97488f43c0e53440f52" id="r_ad9d48b7bfa5fe97488f43c0e53440f52"><td class="memItemLeft" align="right" valign="top"><a id="ad9d48b7bfa5fe97488f43c0e53440f52" name="ad9d48b7bfa5fe97488f43c0e53440f52"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_GREEN</b>(s)</td></tr>
<tr class="memdesc:ad9d48b7bfa5fe97488f43c0e53440f52"><td class="mdescLeft">&#160;</td><td class="mdescRight">Green foreground text. <br /></td></tr>
<tr class="separator:ad9d48b7bfa5fe97488f43c0e53440f52"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b262d60ac915cc8e7f9ea3571e428a6" id="r_a3b262d60ac915cc8e7f9ea3571e428a6"><td class="memItemLeft" align="right" valign="top"><a id="a3b262d60ac915cc8e7f9ea3571e428a6" name="a3b262d60ac915cc8e7f9ea3571e428a6"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_GREENB</b>(s)</td></tr>
<tr class="memdesc:a3b262d60ac915cc8e7f9ea3571e428a6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bold green foreground text. <br /></td></tr>
<tr class="separator:a3b262d60ac915cc8e7f9ea3571e428a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab3e8aa82ffac8431219aaa503371bb67" id="r_ab3e8aa82ffac8431219aaa503371bb67"><td class="memItemLeft" align="right" valign="top"><a id="ab3e8aa82ffac8431219aaa503371bb67" name="ab3e8aa82ffac8431219aaa503371bb67"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_BGREEN</b>(s)</td></tr>
<tr class="memdesc:ab3e8aa82ffac8431219aaa503371bb67"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bright green foreground text. <br /></td></tr>
<tr class="separator:ab3e8aa82ffac8431219aaa503371bb67"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4ebf740700d9538f7f9c39a9feda9489" id="r_a4ebf740700d9538f7f9c39a9feda9489"><td class="memItemLeft" align="right" valign="top"><a id="a4ebf740700d9538f7f9c39a9feda9489" name="a4ebf740700d9538f7f9c39a9feda9489"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_BGREENB</b>(s)</td></tr>
<tr class="memdesc:a4ebf740700d9538f7f9c39a9feda9489"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bold bright green foreground text. <br /></td></tr>
<tr class="separator:a4ebf740700d9538f7f9c39a9feda9489"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af44a05d29c71e2973460095c5c4c215a" id="r_af44a05d29c71e2973460095c5c4c215a"><td class="memItemLeft" align="right" valign="top"><a id="af44a05d29c71e2973460095c5c4c215a" name="af44a05d29c71e2973460095c5c4c215a"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_YELLOW</b>(s)</td></tr>
<tr class="memdesc:af44a05d29c71e2973460095c5c4c215a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Yellow foreground text. <br /></td></tr>
<tr class="separator:af44a05d29c71e2973460095c5c4c215a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a118bed93222861047c6e8e2e79e69ad7" id="r_a118bed93222861047c6e8e2e79e69ad7"><td class="memItemLeft" align="right" valign="top"><a id="a118bed93222861047c6e8e2e79e69ad7" name="a118bed93222861047c6e8e2e79e69ad7"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_YELLOWB</b>(s)</td></tr>
<tr class="memdesc:a118bed93222861047c6e8e2e79e69ad7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bold yellow foreground text. <br /></td></tr>
<tr class="separator:a118bed93222861047c6e8e2e79e69ad7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a30df87e283e83e9b1a9c824906ccab3c" id="r_a30df87e283e83e9b1a9c824906ccab3c"><td class="memItemLeft" align="right" valign="top"><a id="a30df87e283e83e9b1a9c824906ccab3c" name="a30df87e283e83e9b1a9c824906ccab3c"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_BYELLOW</b>(s)</td></tr>
<tr class="memdesc:a30df87e283e83e9b1a9c824906ccab3c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bright yellow foreground text. <br /></td></tr>
<tr class="separator:a30df87e283e83e9b1a9c824906ccab3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a03143f8e3b3aa80a0ce93681a2da3ac8" id="r_a03143f8e3b3aa80a0ce93681a2da3ac8"><td class="memItemLeft" align="right" valign="top"><a id="a03143f8e3b3aa80a0ce93681a2da3ac8" name="a03143f8e3b3aa80a0ce93681a2da3ac8"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_BYELLOWB</b>(s)</td></tr>
<tr class="memdesc:a03143f8e3b3aa80a0ce93681a2da3ac8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bold bright yellow foreground text. <br /></td></tr>
<tr class="separator:a03143f8e3b3aa80a0ce93681a2da3ac8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8d9bcdc42434ec416e97ae03de702903" id="r_a8d9bcdc42434ec416e97ae03de702903"><td class="memItemLeft" align="right" valign="top"><a id="a8d9bcdc42434ec416e97ae03de702903" name="a8d9bcdc42434ec416e97ae03de702903"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_BLUE</b>(s)</td></tr>
<tr class="memdesc:a8d9bcdc42434ec416e97ae03de702903"><td class="mdescLeft">&#160;</td><td class="mdescRight">Blue foreground text. <br /></td></tr>
<tr class="separator:a8d9bcdc42434ec416e97ae03de702903"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0abcf5ab452c7df7ebbb8c9260d7708a" id="r_a0abcf5ab452c7df7ebbb8c9260d7708a"><td class="memItemLeft" align="right" valign="top"><a id="a0abcf5ab452c7df7ebbb8c9260d7708a" name="a0abcf5ab452c7df7ebbb8c9260d7708a"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_BLUEB</b>(s)</td></tr>
<tr class="memdesc:a0abcf5ab452c7df7ebbb8c9260d7708a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bold blue foreground text. <br /></td></tr>
<tr class="separator:a0abcf5ab452c7df7ebbb8c9260d7708a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a985f2c0f9ca2c5466f6aff6f4f36a23d" id="r_a985f2c0f9ca2c5466f6aff6f4f36a23d"><td class="memItemLeft" align="right" valign="top"><a id="a985f2c0f9ca2c5466f6aff6f4f36a23d" name="a985f2c0f9ca2c5466f6aff6f4f36a23d"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_BBLUE</b>(s)</td></tr>
<tr class="memdesc:a985f2c0f9ca2c5466f6aff6f4f36a23d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bright blue foreground text. <br /></td></tr>
<tr class="separator:a985f2c0f9ca2c5466f6aff6f4f36a23d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea72aaff4ec0e42ef504c0b6f0380b9f" id="r_aea72aaff4ec0e42ef504c0b6f0380b9f"><td class="memItemLeft" align="right" valign="top"><a id="aea72aaff4ec0e42ef504c0b6f0380b9f" name="aea72aaff4ec0e42ef504c0b6f0380b9f"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_BBLUEB</b>(s)</td></tr>
<tr class="memdesc:aea72aaff4ec0e42ef504c0b6f0380b9f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bold bright blue foreground text. <br /></td></tr>
<tr class="separator:aea72aaff4ec0e42ef504c0b6f0380b9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abf9b42c66f5c6257a1f12b06703ba566" id="r_abf9b42c66f5c6257a1f12b06703ba566"><td class="memItemLeft" align="right" valign="top"><a id="abf9b42c66f5c6257a1f12b06703ba566" name="abf9b42c66f5c6257a1f12b06703ba566"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_MAGENTA</b>(s)</td></tr>
<tr class="memdesc:abf9b42c66f5c6257a1f12b06703ba566"><td class="mdescLeft">&#160;</td><td class="mdescRight">Magenta foreground text. <br /></td></tr>
<tr class="separator:abf9b42c66f5c6257a1f12b06703ba566"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:add3ff7f651c3dd72cea1136ac2220287" id="r_add3ff7f651c3dd72cea1136ac2220287"><td class="memItemLeft" align="right" valign="top"><a id="add3ff7f651c3dd72cea1136ac2220287" name="add3ff7f651c3dd72cea1136ac2220287"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_MAGENTAB</b>(s)</td></tr>
<tr class="memdesc:add3ff7f651c3dd72cea1136ac2220287"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bold magenta foreground text. <br /></td></tr>
<tr class="separator:add3ff7f651c3dd72cea1136ac2220287"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acbacc9e52edf308a840f11b321300a2c" id="r_acbacc9e52edf308a840f11b321300a2c"><td class="memItemLeft" align="right" valign="top"><a id="acbacc9e52edf308a840f11b321300a2c" name="acbacc9e52edf308a840f11b321300a2c"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_BMAGENTA</b>(s)</td></tr>
<tr class="memdesc:acbacc9e52edf308a840f11b321300a2c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bright magenta foreground text. <br /></td></tr>
<tr class="separator:acbacc9e52edf308a840f11b321300a2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2ae9538d7f932644884e62565d9f5aa8" id="r_a2ae9538d7f932644884e62565d9f5aa8"><td class="memItemLeft" align="right" valign="top"><a id="a2ae9538d7f932644884e62565d9f5aa8" name="a2ae9538d7f932644884e62565d9f5aa8"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_BMAGENTAB</b>(s)</td></tr>
<tr class="memdesc:a2ae9538d7f932644884e62565d9f5aa8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bold bright magenta foreground text. <br /></td></tr>
<tr class="separator:a2ae9538d7f932644884e62565d9f5aa8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a02725b30cd2ae7c9d3ba054239e0e675" id="r_a02725b30cd2ae7c9d3ba054239e0e675"><td class="memItemLeft" align="right" valign="top"><a id="a02725b30cd2ae7c9d3ba054239e0e675" name="a02725b30cd2ae7c9d3ba054239e0e675"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_CYAN</b>(s)</td></tr>
<tr class="memdesc:a02725b30cd2ae7c9d3ba054239e0e675"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cyan foreground text. <br /></td></tr>
<tr class="separator:a02725b30cd2ae7c9d3ba054239e0e675"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a762de8663c7cb15cc334ab414d68160d" id="r_a762de8663c7cb15cc334ab414d68160d"><td class="memItemLeft" align="right" valign="top"><a id="a762de8663c7cb15cc334ab414d68160d" name="a762de8663c7cb15cc334ab414d68160d"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_CYANB</b>(s)</td></tr>
<tr class="memdesc:a762de8663c7cb15cc334ab414d68160d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bold cyan foreground text. <br /></td></tr>
<tr class="separator:a762de8663c7cb15cc334ab414d68160d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a49cd3abc2aabcc6109b736f606341130" id="r_a49cd3abc2aabcc6109b736f606341130"><td class="memItemLeft" align="right" valign="top"><a id="a49cd3abc2aabcc6109b736f606341130" name="a49cd3abc2aabcc6109b736f606341130"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_BCYAN</b>(s)</td></tr>
<tr class="memdesc:a49cd3abc2aabcc6109b736f606341130"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bright cyan foreground text. <br /></td></tr>
<tr class="separator:a49cd3abc2aabcc6109b736f606341130"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34741a36f7b5ca9e583037d7ba4dfd67" id="r_a34741a36f7b5ca9e583037d7ba4dfd67"><td class="memItemLeft" align="right" valign="top"><a id="a34741a36f7b5ca9e583037d7ba4dfd67" name="a34741a36f7b5ca9e583037d7ba4dfd67"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_BCYANB</b>(s)</td></tr>
<tr class="memdesc:a34741a36f7b5ca9e583037d7ba4dfd67"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bold bright cyan foreground text. <br /></td></tr>
<tr class="separator:a34741a36f7b5ca9e583037d7ba4dfd67"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4b89f72c2f631e467742d0370304eb8f" id="r_a4b89f72c2f631e467742d0370304eb8f"><td class="memItemLeft" align="right" valign="top"><a id="a4b89f72c2f631e467742d0370304eb8f" name="a4b89f72c2f631e467742d0370304eb8f"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_BGRAY</b>(s)</td></tr>
<tr class="memdesc:a4b89f72c2f631e467742d0370304eb8f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bright gray foreground text. <br /></td></tr>
<tr class="separator:a4b89f72c2f631e467742d0370304eb8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a57496a3debbdb1617f729a5275d54ea9" id="r_a57496a3debbdb1617f729a5275d54ea9"><td class="memItemLeft" align="right" valign="top"><a id="a57496a3debbdb1617f729a5275d54ea9" name="a57496a3debbdb1617f729a5275d54ea9"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_BGRAYB</b>(s)</td></tr>
<tr class="memdesc:a57496a3debbdb1617f729a5275d54ea9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bold bright gray foreground text. <br /></td></tr>
<tr class="separator:a57496a3debbdb1617f729a5275d54ea9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a431770ad1899e2c03d8b005c1eadaee2" id="r_a431770ad1899e2c03d8b005c1eadaee2"><td class="memItemLeft" align="right" valign="top"><a id="a431770ad1899e2c03d8b005c1eadaee2" name="a431770ad1899e2c03d8b005c1eadaee2"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_DGRAY</b>(s)</td></tr>
<tr class="memdesc:a431770ad1899e2c03d8b005c1eadaee2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dark gray foreground text. <br /></td></tr>
<tr class="separator:a431770ad1899e2c03d8b005c1eadaee2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abba48fb098a7c7229ccc832ba170397a" id="r_abba48fb098a7c7229ccc832ba170397a"><td class="memItemLeft" align="right" valign="top"><a id="abba48fb098a7c7229ccc832ba170397a" name="abba48fb098a7c7229ccc832ba170397a"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_DGRAYB</b>(s)</td></tr>
<tr class="memdesc:abba48fb098a7c7229ccc832ba170397a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bold dark gray foreground text. <br /></td></tr>
<tr class="separator:abba48fb098a7c7229ccc832ba170397a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4916e6b8d1164693b67d47616b8e7105" id="r_a4916e6b8d1164693b67d47616b8e7105"><td class="memItemLeft" align="right" valign="top"><a id="a4916e6b8d1164693b67d47616b8e7105" name="a4916e6b8d1164693b67d47616b8e7105"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_WHITE</b>(s)</td></tr>
<tr class="memdesc:a4916e6b8d1164693b67d47616b8e7105"><td class="mdescLeft">&#160;</td><td class="mdescRight">White foreground text. <br /></td></tr>
<tr class="separator:a4916e6b8d1164693b67d47616b8e7105"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5b0ca86370bf3033c45c3d84f2ac100d" id="r_a5b0ca86370bf3033c45c3d84f2ac100d"><td class="memItemLeft" align="right" valign="top"><a id="a5b0ca86370bf3033c45c3d84f2ac100d" name="a5b0ca86370bf3033c45c3d84f2ac100d"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SIR_WHITEB</b>(s)</td></tr>
<tr class="memdesc:a5b0ca86370bf3033c45c3d84f2ac100d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bold white foreground text. <br /></td></tr>
<tr class="separator:a5b0ca86370bf3033c45c3d84f2ac100d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>ANSI escape sequence macros. </p>
<p>A collection of macros that can be used with libsir's logging functions as well as [f]printf, puts, etc. to manipulate terminal output.</p>
<p><b>Example</b> </p><div class="fragment"><div class="line">printf(RED(<span class="stringliteral">&quot;Something terrible happened!&quot;</span> <a class="code hl_define" href="config_8h.html#a1cd3bda6ec91d6c0b14b352aa40344d5">SIR_EOL</a>));</div>
<div class="ttc" id="aconfig_8h_html_a1cd3bda6ec91d6c0b14b352aa40344d5"><div class="ttname"><a href="config_8h.html#a1cd3bda6ec91d6c0b14b352aa40344d5">SIR_EOL</a></div><div class="ttdeci">#define SIR_EOL</div><div class="ttdoc">The end of line sequence.</div><div class="ttdef"><b>Definition</b> config.h:91</div></div>
</div><!-- fragment --><dl class="section version"><dt>Version</dt><dd>2.2.6</dd></dl>
<hr  />
<p>SPDX-License-Identifier: MIT</p>
<p>Copyright (c) 2018-2024 Ryan M. Lederman <a href="#" onclick="location.href='mai'+'lto:'+'led'+'er'+'man'+'@g'+'mai'+'l.'+'com'; return false;">leder<span class="obfuscator">.nosp@m.</span>man@<span class="obfuscator">.nosp@m.</span>gmail<span class="obfuscator">.nosp@m.</span>.com</a></p>
<p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p>
<p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p>
<p>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</p>
<hr  />
 </div><h2 class="groupheader">Macro Definition Documentation</h2>
<a id="a2d1fd399cd6660d17f42879aefd848ee" name="a2d1fd399cd6660d17f42879aefd848ee"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2d1fd399cd6660d17f42879aefd848ee">&#9670;&#160;</a></span>SIR_COLOR</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SIR_COLOR</td>
          <td>(</td>
          <td class="paramtype"></td>          <td class="paramname"><span class="paramname"><em>attr</em></span>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"></td>          <td class="paramname"><span class="paramname"><em>fg</em></span>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"></td>          <td class="paramname"><span class="paramname"><em>bg</em></span>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"></td>          <td class="paramname"><span class="paramname"><em>s</em></span>&#160;)</td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">                           SIR_ESC_SEQ(#attr <span class="stringliteral">&quot;;&quot;</span> #fg <span class="stringliteral">&quot;;&quot;</span> #bg, s) SIR_ESC_SEQE(<span class="stringliteral">&quot;0;39;49&quot;</span>)</div>
</div><!-- fragment -->
<p>Creates a sequence of colored characters 's' with foreground color 'fg', background color 'bg', and attributes 'attr' (<code>0=normal, 1=bold, 2=dim, 3=italic, 4=underlined, 5=blinking, 7=inverted, 9=strikethrough</code>). </p>
<p>Ends by resetting to the default fg/bg color, and normal attr. </p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.9.7-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_89aa746955889ced97536d9f51ce6c73.html">sir</a></li><li class="navelem"><a class="el" href="ansimacros_8h.html">ansimacros.h</a></li>
    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
  </ul>
</div>
</body>
</html>
